home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / tex / td187src.lzh / SELECTMO.D < prev    next >
Text File  |  1991-12-14  |  4KB  |  148 lines

  1. DEFINITION MODULE SelectModule;
  2.  
  3. FROM Types IMPORT ObjectPtrTyp;
  4.  
  5. PROCEDURE SelObs (all : BOOLEAN) : CARDINAL;
  6. (* Wieviele Root-Objekte sind selektiert, bei all=TRUE auch gesperrte *)
  7.  
  8. PROCEDURE SelPics (all : BOOLEAN) : CARDINAL;
  9. (* Wieviele Root-SubBild-Objekte sind selektiert,
  10.    bei all=TRUE auch gesperrte *)
  11.  
  12. (* ---------------------------- *)
  13.  
  14. PROCEDURE LockSelection;
  15.  
  16. (* ---------------------------- *)
  17.  
  18. PROCEDURE UnLockSelection;
  19.  
  20. (* ---------------------------- *)
  21.  
  22. PROCEDURE DeselectTree(first : ObjectPtrTyp);
  23. (* Gebe Listen-Ast frei *)
  24.  
  25. (* ---------------------------- *)
  26.  
  27. PROCEDURE SelectTree(first : ObjectPtrTyp);
  28.  
  29. (* ---------------------------- *)
  30.  
  31. PROCEDURE ChainOut(VAR start      : ObjectPtrTyp;
  32.                    LookAtLockFlag : BOOLEAN);
  33.  
  34. (* ---------------------------- *)
  35.  
  36. PROCEDURE MergeSelection;
  37. (* Fasse ausgewählte Objekte als Sub-Picture zusammen *)
  38.  
  39. (* ---------------------------- *)
  40.  
  41. PROCEDURE SplitSelection;
  42.  
  43. (* ---------------------------- *)
  44.  
  45. PROCEDURE BringSelectionFront;
  46. (* Ordne Selektion vorne an *)
  47.  
  48. (* ---------------------------- *)
  49.  
  50. PROCEDURE BringSelectionBack;
  51. (* Ordne Selektion hinten an *)
  52.  
  53. (* ---------------------------- *)
  54.  
  55. PROCEDURE DeleteSelection;
  56. (* Lösche alle selektierten Objekte *)
  57.  
  58. (* ---------------------------- *)
  59.  
  60. PROCEDURE GetSurround(VAR x, y, w, h : INTEGER);
  61. (* Liefere Umgebungsrechteck um Selektion,
  62.    Bildschirmkoordinaten *)
  63.  
  64. PROCEDURE getsurround(VAR x, y, w, h : INTEGER);
  65. (* Liefere Umgebungsrechteck um Selektion,
  66.    Objektkoordinaten *)
  67.  
  68. (* ---------------------------- *)
  69.  
  70. PROCEDURE InvertSelection;
  71. (* Invertiere Selektions-Status aller Root-Objekte *)
  72.  
  73. (* ---------------------------- *)
  74.  
  75. PROCEDURE ChangeIt(dx, dy : LONGREAL; xo, yo : INTEGER);
  76. (* Verändere die Größe der Selektion um Faktor
  77.    dx für X-Richtung bzw. um Faktor dy für die
  78.    Y-Richtung. Ist der Wert = 0 so bleiben die
  79.    entsprechenden Werte unverändert. Der Punkt
  80.    (xo, yo) ist Fixpunkt bei der Streckung. *)
  81.  
  82. (* ---------------------------- *)
  83.  
  84. PROCEDURE ChangeAll(dx, dy : LONGREAL; xo, yo : INTEGER);
  85. (* Verändere die Größe aller Objekte um Faktor
  86.    dx für X-Richtung bzw. um Faktor dy für die
  87.    Y-Richtung. Ist der Wert = 0 so bleiben die
  88.    entsprechenden Werte unverändert. Der Punkt
  89.    (xo, yo) ist Fixpunkt bei der Streckung. *)
  90.  
  91. (* ---------------------------- *)
  92.  
  93. PROCEDURE MoveSelection(dx, dy : INTEGER);
  94. (* Verschiebe alle selektierte Objekte um angegebenen Betrag *)
  95.  
  96. (* ---------------------------- *)
  97.  
  98. PROCEDURE CopySelection(dx, dy : INTEGER);
  99. (* Erzeuge Kopie der selektierten Objekte an der
  100.    Position, die durch den angegebenen Abstand
  101.    bestimmt ist  *)
  102.  
  103. (* ---------------------------- *)
  104.  
  105. PROCEDURE MirrorSelection (HoriMirror : BOOLEAN);
  106. (* Spiegele die selektierten Objekte horizontal (HoriMirror = TRUE)
  107.    bzw. vertikal (HoriMirror = FALSE) *)
  108.  
  109. (* ---------------------------- *)
  110.  
  111. PROCEDURE TurnSelection (RightTurn : BOOLEAN);
  112. (* Drehe die selektierten Objekte um 90 Grad  nach rechts
  113.    (RightTurn = TRUE) bzw. links (RightTurn = FALSE) *)
  114.  
  115. (* ---------------------------- *)
  116.  
  117. PROCEDURE AdjustSelection(global, local : INTEGER; adjpic : BOOLEAN);
  118. (* Ordne die selektierten Objekte relativ zu einem Bezugspunkt an *)
  119.  
  120. (* ---------------------------- *)
  121.  
  122. PROCEDURE SplitLines;
  123. (* Spalte alle ausgewählten Linien (Epic..., Rechtecke
  124.    in Einzellinien auf *)
  125.  
  126. PROCEDURE MergeLines;
  127. (* Fasse alle ausgewählten Epic-Linien zusammen *)
  128.  
  129. (* ---------------------------- *)
  130.  
  131. (* Jetzt übergeordnete Prozeduren, die auch die
  132.    Benutzerführung übernehmen... *)
  133.  
  134. PROCEDURE Select();
  135.  
  136. (* ---------------------------- *)
  137.  
  138. PROCEDURE Copy();
  139.  
  140. (* ---------------------------- *)
  141.  
  142. PROCEDURE Move();
  143.  
  144. (* ---------------------------- *)
  145.  
  146. END SelectModule.
  147.  
  148.